package com.example.signupservice.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.example.signupservice.entity.ActivitySignup;

import java.util.Map;

public interface ActivitySignupService extends IService<ActivitySignup> {
    // 移除原有的评价相关方法
    // boolean evaluate(Long signupId, Integer score, String comment); 

    /**
     * 志愿者报名活动（业务校验：防止重复报名）
     * @param activityId 活动ID
     * @param volunteerId 志愿者ID
     * @return 是否成功
     */
    boolean signUp(Long activityId, Long volunteerId);

    /**
     * 条件分页查询报名记录
     * @param current 当前页
     * @param size 每页大小
     * @param params 查询参数（activityId, volunteerId, status）
     * @return 分页结果
     */
    IPage<ActivitySignup> pageSignups(Integer current, Integer size, Map<String, Object> params);
}
